package com.tedu.day04mybatis.mapper;

import com.tedu.day04mybatis.pojo.WeiBo;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

@Mapper
public interface WeiBoMapper {
    /* 注意：Mybatis在查询数据时会使用查询结果集的字段名与返回的对象属性名对照，并将数据设置到
        对应属性上，如果查询表中的字段名与对象属性名不一致时，应当为字段取别名，别名与属性名一致即可
        例如：
            weibo表中用户id的字段名为user_id
            WeiBo类中对应字段的属性名为userId
            在SQL语句中user_id就可以定义别名userId，mybatis就会将查询到的user_id值设置到userId中

     */
    @Insert("INSERT INTO weibo(content,created,user_Id) VALUES(#{content},#{created},#{userId})")
    int insert(WeiBo weibo);
    @Update("UPDATE weibo SET id=#{id},content=#{content},created=#{created},user_id=#{userId} WHERE id=#{id}")
    int update(WeiBo weibo);
    @Select("SELECT id,content,created,user_id userId FROM weibo WHERE id=#{id}")
    WeiBo select(Integer id);
    @Select("SELECT id,content,created,user_id userId FROM weibo")
    List<WeiBo> selectAll();




}
